-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: logcollection to OpenSearch in non-debug clusters #2080
Conversation
✅ Deploy Preview for constellation-docs canceled.
|
1e68914
to
d6f60e3
Compare
sry for the late review. having a look today. did you already run an E2E test to test if logs are uploaded on OS? |
|
@msanft you can rebase to fix govulncheck |
nit: remove "Previously, " from description. Otherwise nice description :) |
a1676cf
to
4f85ac4
Compare
otherwise, looks good to me. Very clean work :) |
maybe it's useful to add the jobname to the metadata and not just the workflow name? Makes it easier to filter |
It's unfortunately not exposed by GitHub: https://docs.github.com/en/actions/learn-github-actions/contexts#github-context |
Turning this back into a draft until missing journald logs are resolved |
e40face
to
7a9dc8b
Compare
Signed-off-by: Paul Meyer <[email protected]>
1753d7c
to
335f6dc
Compare
This fixes the output paths of builds within the container by mounting directories to paths that exist on the host. We also explicitly set the output path in a .bazelrc to the user specific path. The rc file is mounted into the container and overrides the host rc. Also adding automatic stop in case start is called and a containers is already running. Sym links like bazel-out and paths bazel outputs should generally work with this change. Signed-off-by: Paul Meyer <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
code is functional, lgtm
Context
Previously, Filebeat and Logstash (our utilities for logcollection to OpenSearch) were only deployed through the
debugd
, which only got deployed in debug-clusters. We can also deploy Filebeat and Logstash through Helm as a Kubernetes deployment, allowing us to also deploy it in non-debug clusters. This should also be helpful in resolving this bug, as we are able to retrieve systemd-logs after thedebugd
runs. (i.e. when Kubernetes runs)Proposed change(s)
hack/logcollector
which retrieves and templates the configuration files into the format that the Elastic Helm charts need. This seems to be very complex for a small problem, but it will allow us to keep a consistent log format between non-debug and debug cluster logs, as we only specify the output format indebugd/{filebeat,logstash}
and don't have duplication.TODO
Write documentation on how to deploy in non-CI clustersUse a "real" CI condition for the deployment rather than deploying to all clustersTODO added in code, for now deploy both in all runs to resolve "missing OpenSearch logs"-bug - during this time, this will lead to duplicated logs in non-buggy debug clusters.Test CI container build of debugd-{filebeat,logstash}Workflow runPossibly extend metadata-fields as viable (e.g. csp)Checklist